package com.ssd.utils;

import java.nio.charset.StandardCharsets;
import java.util.Base64;

/**
 * @author itcast
 */
public class Base64Utils {

    /**
     * 字符串编码
     *
     * @param content
     * @return
     */
    public static byte[] encode(String content) {
        if (null == content) {
            return "".getBytes();
        }
        return Base64.getEncoder().encode(content.getBytes(StandardCharsets.UTF_8));
    }
    /**
     * 将字符串进行Base64编码
     * 此方法主要用于对给定的字符串内容进行Base64编码，编码过程使用UTF-8字符集
     *
     * @param content 需要编码的字符串内容
     * @return 编码后的字符串
     */
    public static String encodeStr(String content) {
        return new String(encode(content), StandardCharsets.UTF_8);
    }

    /**
     * 将字符串进行Base64解码
     * 此方法主要用于对给定的经过Base64编码的字符串内容进行解码，解码过程使用UTF-8字符集
     *
     * @param content 需要解码的字符串内容
     * @return 解码后的字符串
     */
    public static String decodeStr(String content) {
        return new String(Base64.getDecoder().decode(content.getBytes(StandardCharsets.UTF_8)));
    }


}
